package cn.koala.key.scraped.service;

import cn.koala.key.scraped.domain.dto.ScrapedOrderDTO;
import cn.koala.key.scraped.domain.dto.ScrapedSerachDTO;
import cn.koala.key.scraped.domain.vo.ScrapedKeyInfoExcel;
import cn.koala.key.scraped.domain.vo.ScrapedOrderDetailVO;
import cn.koala.key.scraped.domain.vo.ScrapedOrderVO;
import cn.koala.key.stock.domain.dto.CarVinDTO;
import cn.koala.key.stock.domain.vo.KeyInfoVO;
import cn.seed.common.core.Result;
import cn.seed.common.core.ResultList;

import java.util.List;


/**
 * 
 * @author shuai.xu
 * @date 2019/05/27
 **/
public interface ScrapedOrderService{

    /**
     * 分页查询报废单
     * @description scrapedList
     * @param scrapedSerachDTO
     * @return java.util.List<cn.koala.key.scraped.domain.vo.ScrapedOrderVO>
     * @Exception
     * @author shuai.xu
     * @time 2019/5/27 17:28
    */
    Result<ResultList<ScrapedOrderVO>> scrapedList(ScrapedSerachDTO scrapedSerachDTO);

    Result<ScrapedOrderDetailVO> getScrapedDetailByOrderNo(String orderNo);

    /**
     * 数据转换
     * @description dataProcessing
     * @param data
     * @return java.util.List<cn.koala.key.scraped.domain.vo.ScrapedKeyInfoExcel>
     * @Exception
     * @author shuai.xu
     * @time 2019/5/30 17:20
    */
    List<ScrapedKeyInfoExcel> dataProcessing(List<KeyInfoVO> data);

    /**
     * 新增编辑报废单
     * @description insertOrUpdate
     * @param scrapedOrderDTO
     * @return void
     * @Exception
     * @author shuai.xu
     * @time 2019/5/31 13:36
    */
    Result insertOrUpdate(ScrapedOrderDTO scrapedOrderDTO);

    /**
     * 提交/作废报废单
     * @description invalidOrSubmit
     * @param orderNo
     * @param status
     * @return cn.seed.common.core.Result
     * @Exception
     * @author shuai.xu
     * @time 2019/5/31 17:37
    */
    Result invalidOrSubmit(String orderNo, Integer status);
}
